কালীন সারি (Queue)
কালীন সারি হলো একটি ডাটা স্ট্রাকচার যা "প্রথমে আসলে প্রথমে যাবে" (FIFO: First In, First Out) নীতিতে কাজ করে। এটি এমন একটি ডাটা সংগঠন যেখানে উপাদানগুলো একটি প্রান্তে (পেছন) যোগ করা হয় এবং অন্য প্রান্তে (সামনে) থেকে সরানো হয়।
কালীন সারির উপাদানসমূহ
কালীন সারির কার্যপ্রণালী বুঝতে এর উপাদান বা উপাংশগুলো জানা গুরুত্বপূর্ণ। কালীন সারির প্রধান উপাদানগুলো হলো:
১. ফ্রন্ট (Front):
- ফ্রন্ট হলো কালীন সারির প্রথম উপাদান।
- এখান থেকে উপাদান সরানো (Dequeue) হয়।
২. রিয়ার বা পেছন (Rear/Back):
- রিয়ার হলো কালীন সারির শেষ প্রান্ত।
- এখানে নতুন উপাদান যোগ করা (Enqueue) হয়।
৩. কালীন সারির দৈর্ঘ্য (Length):
- সারিতে কতগুলো উপাদান রয়েছে তা বোঝানোর জন্য এটি ব্যবহৃত হয়।
৪. সারির সর্বোচ্চ আকার (Capacity):
- নির্ধারণ করে যে একটি কালীন সারি কতগুলো উপাদান ধারণ করতে পারে।
৫. অপারেশন:
কালীন সারিতে উপাদান সংযোজন এবং অপসারণের জন্য নিম্নলিখিত অপারেশনগুলো থাকে:
- এনকিউ (Enqueue):
নতুন উপাদান যোগ করা হয়।
উদাহরণ: পেছন থেকে নতুন ডাটা যোগ করা। - ডিকিউ (Dequeue):
প্রথম উপাদানটি সরিয়ে ফেলা হয়।
উদাহরণ: সামনের দিকের ডাটা সরিয়ে ফেলা। - ফ্রন্ট():
ফ্রন্টে থাকা উপাদানটি দেখা বা রিটার্ন করার জন্য ব্যবহৃত হয়। - ইম্পটি চেক (IsEmpty):
চেক করে যে সারিটি ফাঁকা কিনা। - পূর্ণতা চেক (IsFull):
চেক করে যে সারিটি পূর্ণ কিনা।
কালীন সারির প্রকারভেদ
কালীন সারির কার্যপ্রণালী এবং প্রয়োগ অনুসারে এটি বিভিন্ন প্রকারে বিভক্ত:
১. সাধারণ কালীন সারি (Simple Queue):
- FIFO নীতিতে কাজ করে।
২. বৃত্তাকার কালীন সারি (Circular Queue):
- রিয়ার যখন সর্বোচ্চ আকারে পৌঁছে যায়, তখন এটি প্রথমে ফিরে যায় (circular) এবং নতুন উপাদান যোগ হয়।
৩. অগ্রাধিকার কালীন সারি (Priority Queue):
- প্রতিটি উপাদানের একটি অগ্রাধিকার মান থাকে এবং অগ্রাধিকার অনুযায়ী উপাদানগুলো প্রক্রিয়াকরণ হয়।
৪. দ্বি-প্রান্ত কালীন সারি (Deque):
- এখানে উপাদান যোগ ও সরানো উভয়ই ফ্রন্ট এবং রিয়ার থেকে করা যায়।
সারসংক্ষেপ
কালীন সারি একটি গুরুত্বপূর্ণ ডাটা স্ট্রাকচার যা FIFO নীতিতে কাজ করে। এর প্রধান উপাদান হলো ফ্রন্ট, রিয়ার, দৈর্ঘ্য, এবং ক্ষমতা। কালীন সারির কার্যপ্রণালী বিভিন্ন অপারেশন এবং এর প্রকারভেদ, যেমন সাধারণ, বৃত্তাকার, অগ্রাধিকার, এবং দ্বি-প্রান্ত সারির মাধ্যমে আরও কার্যকরভাবে ব্যবহৃত হয়।
Read more